<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<style>
    * {
        margin: 0;
        padding: 0;
        list-style: none;
    }

    html,
    body {
        width: 100%;
        height: 100%;
    }

    body {
        display: flex;
        justify-content: center;
        align-items: center;
        background-color: #222;
    }

    .box {
        background-color: #000;
        border-radius: 50%;
        border: 10px solid #000;
        transform: perspective(800px) rotateX(45deg);
        box-shadow: 0 10px 0 #383838, 0 10px 15px rgba(0, 0, 0, 0.5);
        position: relative;
        top: -30px;
    }

    .box .taiji {
        display: block;
        width: 200px;
        height: 100px;
        border-bottom: 100px solid #fff;
        border-radius: 50%;
        position: relative;
        animation: animate infinite linear 3s;
    }

    .box .taiji::before {
        content: '';
        position: absolute;
        top: 50%;
        left: 0;
        width: 20px;
        height: 20px;
        background-color: #000;
        border: 40px solid #fff;
        border-radius: 50%;
    }

    .box .taiji::after {
        content: '';
        position: absolute;
        top: 50%;
        right: 0;
        width: 20px;
        height: 20px;
        background-color: #fff;
        border: 40px solid #000;
        border-radius: 50%;
    }

    @keyframes animate {
        0% {
            transform: rotate(360deg);
        }

        100% {
            transform: rotate(0);
        }
    }
</style>

<body>
    <section class="box">
        <span class="taiji"></span>
    </section>
</body>

</html>